1. Field of the Invention
The present invention relates generally to the field of Universal Plug and Play (UPnP) communication, and more particularly, to providing an enhanced event notification in a UPnP home network environment.
2. Description of the Related Art
UPnP is a set of computer network protocols promulgated by the UPnP forum. The goals of UPnP are to allow access to connect seamlessly and to simplify implementation of networks in home (e.g., data sharing, communications, and entertainment) and corporate environments. These goals are achieved by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
The UPnP technology can cater to a wide range of devices in a home network. The UPnP provides discovery, control, and eventing mechanisms. Discovery mechanisms are enabled using Simple Service Discovery Protocol (SSDP). Eventing mechanisms follow General Event Notification Architecture (GENA) protocol. Using these technologies, UPnP makes availability and unavailability of the UPnP devices on the fly to other devices in the UPnP home network.
UPnP architecture allows peer-to-peer networking of Personal Computers (PCs), networked appliances, and wireless devices. The UPnP architecture is a distributed, open architecture based on established standards such as, for example, Transport Control Protocol/Internet Protocol (TCP/IP), User Datagram Protocol (UDP), HyperText Transfer Protocol (HTTP) and eXtensible Mark-up Language (XML). The UPnP architecture supports zero configuration networking. For example, a UPnP compatible device from any vendor can dynamically join a network, obtain an Internet Protocol (IP) address, announce its name, convey its capabilities upon request, and learn about the presence and capabilities about other devices. On the other hand, the UPnP devices can leave the UPnP home network automatically without leaving any unwanted state information.
The foundation for UPnP networking is Internet Protocol (IP) addressing. Each UPnP device includes a Dynamic Host Configuration Protocol (DHCP) client, which searches for a DHCP server when the UPnP device is first connected to the UPnP network. If no DHCP server is available, the UPnP device assigns itself an address. If, during the DHCP transaction, the UPnP device obtains a domain name, for example, through a Domain Name System (DNS) server or via DNS forwarding, the UPnP device uses that name in subsequent network operations; otherwise the UPnP device uses its IP address.
The UPnP forum also provides telephony services for extending user experience in a home to access telephony services, such as, for example, a messaging service, a presence service, and call handling (Packet-Switched (PS)/Circuit-Switched (CS) call) service. As analogous to UPnP Device Architecture (DA), telephony defines three kinds of devices, viz., a Telephony Server (TS) that provides messaging and presence related services to the user, a telephony control point (UPnP telephony device) to initiate actions provided by the TS, and a Telephony Client device (TC) for media related handling and providing input and output to/from the TS.
The UPnP telephony services enable a user to initiate/receive calls/messages to/from any user outside of the UPnP home network using a telephony control point based on a Wide Area Network (WAN) calling technology like VOIP or other calling technologies. For example, when a call is received from another device, a call notification is provided to the telephony control point by the TS. However, the UPnP telephony services do not provide call notifications that have incoming call state and originator address.